| height# - высота цилиндрической части капсулы radius# - радиус капсулы mass# - масса тела |
| Создает тело с геометрией капсулы. Возвращет идентификатор тела. Внимание - если mass = 0 тело статическое, при прочих значениях динамическое. |
|
;Пример использования функции ;pxCreateCapsule Graphics3D 800,600,32,2 cam = CreateCamera() PositionEntity cam,20,6,0 RotateEntity cam,0,90,0 light = CreateLight() RotateEntity light,20,30,40 pxCreateWorld(0) ;Создаем статическое тело с геометрией куба plane_body = pxCreateCube(5,.5,7.5,0) ;визуализируем его plane_mesh=CreateCube() ScaleEntity plane_mesh,5,.5,7.5 ;слегка подвернем его чтобы капсула катилась pxSetRotation plane_body,-20,0,0 RotateEntity plane_mesh,-20,0,0 ;----------- применяем pxCreateCapsule: ------------ ;создаем тело c геометрией капсула capsule_body = pxCreateCapsule(2,1,10) ;установим его на небольшую высоту pxSetPosition capsule_body,0,7,4 ;cоздаем для нее визуализацию ;на основе цилиндра capsule_mesh=CreateCylinder() ;ScaleMesh capsulemesh,1,1,1 ;И двух сфер sphere = CreateSphere() PositionMesh sphere,0,1,0 AddMesh sphere,capsule_mesh FreeEntity sphere sphere = CreateSphere() PositionMesh sphere,0,-1,0 AddMesh sphere,capsule_mesh FreeEntity sphere EntityColor capsule_mesh,255,0,0 While Not(KeyHit(1)) ;обсчитываем физический мир за указаное время ;синхронизация включена. RenderPhysic(30,1) ;ставим визуальный куб в позицию физического куба PositionEntity capsule_mesh,pxGetPositionX (capsule_body),pxGetPositionY (capsule_body),pxGetPositionZ (capsule_body) RotateEntity capsule_mesh,pxGetRotationPitch (capsule_body),pxGetRotationYaw (capsule_body),pxGetRotationRoll (capsule_body) RenderWorld Flip Wend End |
К содержанию
Нажмите здесь чтобы увидеть последнюю версию этой странички в режиме online.